package com.zb.vo;

import com.zb.annotation.NumberPattern;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;

/**
 * @Author WEN
 * @Date 2024/2/27 0027
 **/
@Data
@ApiModel("品牌商家策略对象")
public class FactoryStrategyVo {

    @NotNull(message = "是否开启工单配件权限项不能为空")
    @ApiModelProperty(value = "是否开启工单配件权限：false-不开启，true-开启", required = true, example = "false")
    private Boolean enableSpareAuthori;

    @ApiModelProperty(value = "是否开启申请工单配件：false-不开启，true-开启，当enableSpareAuthori=true时生效", required = true, example = "false")
    private Boolean enableApplySpare;

    @ApiModelProperty(value = "是否开启审核工单配件：false-不开启，true-开启，当enableSpareAuthori=true时生效", required = true, example = "false")
    private Boolean enableCheckSpare;

    @NotNull(message = "是否开启工单费用权限项不能为空")
    @ApiModelProperty(value = "是否开启工单费用权限：false-不开启，true-开启", required = true, example = "false")
    private Boolean enableFeeAuthori;

    @ApiModelProperty(value = "是否开启申请工单费用：false-不开启，true-开启，当enableFeeAuthori=true时生效", required = true, example = "false")
    private Boolean enableApplyFee;

    @ApiModelProperty(value = "是否开启审核工单费用：false-不开启，true-开启，当enableFeeAuthori=true时生效", required = true, example = "false")
    private Boolean enableCheckFee;

    @NotNull(message = "结算类型不能为空")
    @NumberPattern(regexp = "^(1|2)$", required = true, message = "结算类型参数值不合法")
    @ApiModelProperty(value = "结算类型：1-预充值，2-月结", required = true)
    private Integer settlementType;
}
